package org.jeecg.modules.scm.vo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;

import java.io.Serializable;
import java.util.Date;

@Data
@EqualsAndHashCode(callSuper = false)
@NoArgsConstructor
@AllArgsConstructor
@Builder(toBuilder = true)
@ApiModel(value = "应收账款任务Vo")
public class ReceivablesTaskVo implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 任务ID
     */
    @ApiModelProperty(value = "任务ID")
    private String taskId;

    /**
     * 任务定义时的key（id）
     */
    @ApiModelProperty(value = "任务定义key")
    private String definitionKey;

    /**
     * 流程定义ID
     */
    @ApiModelProperty(value = "流程定义ID")
    private String processDefinitionId;

    /**
     * 任务名称
     */
    @ApiModelProperty(value = "任务名称")
    private String taskName;
    /**
     * 任务办理人
     */
    @ApiModelProperty(value = "任务办理人")
    private String assignee;

    /**
     * 流程实例 id
     */
    @ApiModelProperty(value = "流程实例 id")
    private String instanceId;

    /**
     * 拾取任务时间
     */
    @ApiModelProperty(value = "拾取任务时间")
    private Date claimTime;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    /**
     * 任务持续时间  current - createTime
     */
    @ApiModelProperty(value = "任务持续时间")
    private Date dueTime;
    /**
     * 业务种类
     */
    @ApiModelProperty(value = "业务种类")
    private String businessCategory;
    /**
     * 业务号
     */
    @ApiModelProperty(value = "业务号")
    private String businessNo;
    /**
     * 流程实例名称
     */
    @ApiModelProperty(value = "流程实例名称")
    private String processInstanceName;

    /**
     * 流程定义名称
     */
    @ApiModelProperty(value = "流程定义名称")
    private String processDefinitionName;
}
